
#ifndef __TANKWAR_H__
#define	__TANKWAR_H__

#include "PlgFile.h"
#include "GameMain.h"
#include "3dCamera.h"
#include "RenderList.h"

// defines for the game universe
#define UNIVERSE_RADIUS   4000

#define POINT_SIZE        200
#define NUM_POINTS_X      (2*UNIVERSE_RADIUS/POINT_SIZE)
#define NUM_POINTS_Z      (2*UNIVERSE_RADIUS/POINT_SIZE)
#define NUM_POINTS        (NUM_POINTS_X*NUM_POINTS_Z)

// defines for objects
#define NUM_TOWERS        96
#define NUM_TANKS         24
#define TANK_SPEED        15


class CTankWar : public CGameMain
{
public:

	CTankWar();
	virtual ~CTankWar();

	virtual int	Game_Init();
	virtual int	Game_Main();
	virtual int	Game_Shutdown();

protected:
	C3dCamera       cam;						// the single camera
	CRenderList		rend_list;					// the single renderlist

	//CObj4dLst		rend_list;	

	// initialize camera position and direction
	CPoint4d		cam_pos;
	CVector4d		cam_dir;
	CPoint4d		cam_target;

	CObj4d			obj_tower;    // used to hold the master tower
	CObj4d			obj_tank;     // used to hold the master tank
	CObj4d			obj_marker;   // the ground marker
	CObj4d			obj_player;   // the player object  

	CPoint4d        towers[NUM_TOWERS];
	CPoint4d		tanks[NUM_TANKS];


	CPlgFile		m_plgFile;

	// all your initialization code goes here...
	CVector4d		vscale;
	CVector4d		vpos;
	CVector4d		vrot;
};

#endif